/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ws;

import bean.BuscaChaveEstrangeira;
import bean.BuscaChaveEstrangeiraVetor;
import bean.CondicaoCompra;
import bean.CondicaoCompraVetor;
import java.util.Vector;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.ejb.Stateless;
import persistencia.controller.CondicaoController;

/**
 *
 * @author André
 */
@WebService(wsdlLocation = "META-INF/wsdl/CondicaoCompraWSService.wsdl")
@Stateless()
public class CondicaoCompraWS {

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "createCondicao")
    public boolean createCondicao(@WebParam(name = "condicao") CondicaoCompra condicao) {

        CondicaoController cc = CondicaoController.getInstance();
        return cc.createCondicao(condicao);
    }

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "readCondicaoPorId")
    public CondicaoCompra readCondicaoPorId(@WebParam(name = "codigoCondicao") Integer codigoCondicao) {

        CondicaoController cc = CondicaoController.getInstance();
        CondicaoCompra c = cc.readCondicaoPorId(codigoCondicao);

        if (c == null) {
            System.out.println("CondicaoCompraWS.readCondicaoPorId retornou NULL");
            return null;
        }

        System.out.println("CondicaoCompra[PK]: " + c.getTcodigo_pk());

        return c;
    }

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "deleteCondicao")
    public boolean deleteCondicao(@WebParam(name = "codigoCondicao") Integer codigoCondicao) {

        CondicaoController cc = CondicaoController.getInstance();
        return cc.deleteCondicao(codigoCondicao);
    }

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "updateCondicao")
    public boolean updateCondicao(@WebParam(name = "condicao") CondicaoCompra condicao) {

        CondicaoController cc = CondicaoController.getInstance();
        return cc.updateCondicao(condicao);
    }

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "searchGrupoPorId")
    public BuscaChaveEstrangeiraVetor searchGrupoPorId(@WebParam(name = "codigo") Integer codigo) {

        CondicaoController cc = CondicaoController.getInstance();
        Vector<BuscaChaveEstrangeira> v = cc.searchGrupoPorId(codigo);

        if (v == null) {
            System.out.println("CondicaoCompraWS.searchGrupoPorId retornou NULL");
            return null;
        }
        for (BuscaChaveEstrangeira i : v) {
            System.out.println(i);
        }

        BuscaChaveEstrangeiraVetor vetor = new BuscaChaveEstrangeiraVetor();
        vetor.setLista(v);
        return vetor;
    }

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "searchGrupoPorNome")
    public BuscaChaveEstrangeiraVetor searchGrupoPorNome(@WebParam(name = "descricao") String descricao) {

        CondicaoController cc = CondicaoController.getInstance();
        Vector<BuscaChaveEstrangeira> v = cc.searchGrupoPorNome(descricao);

        if (v == null) {
            System.out.println("CondicaoCompraWS.searchGrupoPorNome retornou NULL");
            return null;
        }
        for (BuscaChaveEstrangeira i : v) {
            System.out.println(i);
        }

        BuscaChaveEstrangeiraVetor vetor = new BuscaChaveEstrangeiraVetor();
        vetor.setLista(v);
        return vetor;
    }

    /**
     * Operação de serviço web
     */
    @WebMethod(operationName = "readCondicao")
    public CondicaoCompraVetor readCondicao(@WebParam(name = "descricao")
    String descricao) {

        CondicaoController cc = CondicaoController.getInstance();
        Vector<CondicaoCompra> v = cc.readCondicao(descricao);

        if (v == null) {
            System.out.println("CondicaoCompraWS.readCondicao retornou NULL");
            return null;
        }
        for (CondicaoCompra i : v) {
            System.out.println("CondicaoCompra[PK]: " + i.getTcodigo_pk());
        }

        CondicaoCompraVetor vetor = new CondicaoCompraVetor();
        vetor.setLista(v);
        return vetor;
    }
}
